package br.edu.ifrn.atamtracer.session.dao;

import java.util.List;

import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import br.edu.ifrn.atamtracer.modelo.Usuario;

/**
 * Session Bean implementation class UsuarioDAO
 */
@Stateless
public class UsuarioDAO implements UsuarioDAOLocal {
	@PersistenceContext(unitName="ATAMTracer")
	private EntityManager em;
	
    /**
     * Default constructor. 
     */
    public UsuarioDAO() {
    }

	@Override
	public Usuario autentia(String login, String senha) {
		Query query = em.createNamedQuery("autenticaUsuario");
		query.setParameter("login", login);
		query.setParameter("senha", senha);
		Usuario usr = null;
		try {
			usr = (Usuario) query.getSingleResult();
		} catch (NoResultException enfex) {
			return null;
		}
		return usr; 
	}

	@Override
	public void insereUsuraio(Usuario usuario) {
		em.persist(usuario);
	}

	@SuppressWarnings("unchecked")
	@Override
	public List<Usuario> listaUsuarios() {
		Query query = em.createNamedQuery("listaUsuarios");
		return query.getResultList();
	}

}
